package nc.impl.pub.service;

import nc.bs.framework.common.NCLocator;
import nc.jdbc.framework.generator.IdGenerator;
import nc.vo.ipm.pub.tool.ArrayUtil;
import nc.vo.pub.BusinessException;
import nccloud.bs.log.ImplLogVO;

public class NccAttachmentFileUploadUtil {
	
	/**
	 * 设置错误日志
	 * @param pk_group       集团
	 * @param pk_org         组织
	 * @param pk_org_v       组织版本
	 * @param pk_billtypeid  单据类型
	 * @param vbillcode      单据号
	 * @param issuccess      是否成功
	 * @param error          错误信息
	 * @param args           自定义项  按照 vdef1 -> vdef10
	 * @return
	 * @throws BusinessException
	 */
	public static ImplLogVO setLogVO(String pk_group,String pk_org,String pk_org_v, String pk_billtypeid,String vbillcode,String issuccess,String error, String ...args) throws BusinessException{
		ImplLogVO logvo = new ImplLogVO();
		logvo.setPk_group(pk_group);
		logvo.setPk_org(pk_org);
		logvo.setPk_org_v(pk_org_v);
		logvo.setDr(0);
		logvo.setPk_billtypeid(pk_billtypeid);
		logvo.setError(error);
		logvo.setVbillcode(vbillcode);
		logvo.setIssuccess(issuccess);
		if(ArrayUtil.isNotEmpty(args)) {
			for(int i = 0 ; i < args.length ; i++) {
				String vdef = "vdef"+(i+1);
				logvo.setAttributeValue(vdef, args[i]);
			}
		}
		return logvo;
	}
	
	/**
	 * 设置默认的日志信息 
	 * @param fileURL         附件地址
	 * @param pk_group        集团
	 * @param pk_org          组织
	 * @param pk_org_v        组织版本
	 * @param pk_billtypeid   单据类型
	 * @return
	 * @throws BusinessException
	 */
	public static ImplLogVO setDefaultLogVO (String fileURL, String pk_group,String pk_org,String pk_org_v, String pk_billtypeid)  throws BusinessException{
		ImplLogVO logvo = new ImplLogVO();
		logvo.setDr(0);
		logvo.setPk_id(NCLocator.getInstance().lookup(IdGenerator.class).generate());
		logvo.setVdef1(fileURL); // 
		logvo.setPk_billtypeid(pk_billtypeid);
		logvo.setPk_group(pk_group);
		logvo.setPk_org(pk_org);
		logvo.setPk_org_v(pk_org_v);
		return logvo;
	}
}
